&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	СписокЗначений = Элементы.ИмяПользователя.СписокВыбора;

	Если ПравоДоступа("АдминистрированиеДанных", Метаданные) Тогда
		Для Каждого Элем Из ПользователиИнформационнойБазы.ПолучитьПользователей() Цикл
			СписокЗначений.Добавить(Элем.Имя);
		КонецЦикла;
		СписокЗначений.СортироватьПоЗначению();
	Иначе
		СписокЗначений.Добавить(ИмяПользователя());
		Элементы.ИмяПользователя.ТолькоПросмотр = Истина;
	КонецЕсли;

	ВариантОтображения = "Авто";
	ИмяПользователя = ИмяПользователя();
КонецПроцедуры

&НаКлиенте
Процедура УстановитьМасштабОтображения(Команда)
	Если Не ПустаяСтрока(ВариантОтображения) Тогда
		ПоказатьВопрос(Новый ОписаниеОповещения("УстановитьМасштабОтображенияДалее", ЭтаФорма),
			"Масштаб отображения форм будет изменен. Продолжить?", РежимДиалогаВопрос.ДаНетОтмена, 20);
	КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура УстановитьМасштабОтображенияДалее(РезультатВопроса, ДопПараметры) Экспорт
	Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
		Если УстановитьМасштабОтображенияНаСервере(ВариантОтображения, ИмяПользователя) Тогда
			ПоказатьПредупреждение( , "Масштаб отображения форм изменен.
									  |Чтобы изменения вступили в силу надо перезайти в 1С:Предприятие.", 20);
		КонецЕсли;
	КонецЕсли;
КонецПроцедуры

&НаСервереБезКонтекста
Функция УстановитьМасштабОтображенияНаСервере(ВариантОтображения, Знач ИмяПользователя)
	Если ПустаяСтрока(ИмяПользователя) Тогда
		ИмяПользователя = Неопределено;
	КонецЕсли;

	Попытка
		Настройка = ХранилищеСистемныхНастроек.Загрузить("Общее/НастройкиКлиентскогоПриложения", "", , ИмяПользователя);

		Если Не ТипЗнч(Настройка) = Тип("НастройкиКлиентскогоПриложения") Тогда
			Настройка = Новый НастройкиКлиентскогоПриложения;
		КонецЕсли;

		Настройка.ВариантМасштабаФормКлиентскогоПриложения = ВариантМасштабаФормКлиентскогоПриложения[ВариантОтображения];
		ХранилищеСистемныхНастроек.Сохранить("Общее/НастройкиКлиентскогоПриложения", "", Настройка, , ИмяПользователя);
		Возврат Истина;
	Исключение
		Сообщить(ОписаниеОшибки());
		Возврат Ложь;
	КонецПопытки;
КонецФункции